package com.sky.report.service;

import com.sky.vo.OrderReportVO;
import com.sky.vo.SalesTop10ReportVO;
import com.sky.vo.TurnoverReportVO;
import com.sky.vo.UserReportVO;

import javax.servlet.http.HttpServletResponse;
import java.time.LocalDate;

/**
 * 商家-数据统计 service
 */
public interface ReportService {


    /**
     * 数据统计 时间范围，营业额统计
     */
    TurnoverReportVO getTurnOverStatistics(LocalDate begin, LocalDate end);


    /**
     * 数据统计 时间范围，用户量统计
     */
    UserReportVO userCountStatistics(LocalDate begin, LocalDate end);


    /**
     * 数据统计 时间范围，订单统计
     */
    OrderReportVO ordersCountStatistics(LocalDate begin, LocalDate end);


    /**
     * 数据统计 热销商品Top10
     */
    SalesTop10ReportVO salesTop10Ststistics(LocalDate begin, LocalDate end);


    /**
     * 数据导出 计算从前一天开始，前30天的数据
     */
    void exportBusinessData(HttpServletResponse response);
}
